package cn.gov.pbc.gd.credit.user.service.login;

import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.liu.jbase.BaseVo;
import com.liu.jbase.ResultVo;
import com.liu.jbase.service.IBaseService;

import cn.gov.pbc.gd.credit.common.model.UserModel;
import cn.gov.pbc.gd.credit.common.vo.LoginVo;
import cn.gov.pbc.gd.credit.vo.user.ResUserVo;
import cn.gov.pbc.gd.credit.vo.user.UserVo;

public interface ILoginService extends IBaseService<ResUserVo, UserVo>{
	
	/**
	 * @date 2017年5月14日
	 * @time 下午8:28:07
	 * @author liuxingmi
	 * @desc 用户登录
	 * @param vo
	 * @param request
	 * @return
	 */
	public ResultVo<UserModel>  login(LoginVo vo, HttpServletRequest request);
	
	/**
	 * @date 2017年5月19日
	 * @time 下午4:32:41
	 * @author liuxingmi
	 * @desc  用户退出
	 * @param vo
	 * @param request
	 * @return
	 */
	public ResultVo<UserModel> logout(BaseVo vo, HttpServletRequest request);
	
	/**
	 * @author liuxingmi
	 * @datetime 2017年6月24日 下午3:09:45
	 * @desc 根据登录类型获取用户认证信息
	 * @param loginVo
	 * @param request
	 * @param response
	 * @return ResultVo<String>
	 */
	public ResultVo<String> findFaceCertifiedImg(LoginVo loginVo, HttpServletRequest request, HttpServletResponse response);
	
	/**
	 * @author liuxingmi
	 * @datetime 2017年6月27日 上午9:38:17
	 * @desc 登录页配置信息
	 * @param vo
	 * @param request
	 * @return ResultVo<Map<String,Object>>
	 */
	public ResultVo<Map<String, Object>> loginConf(LoginVo vo, HttpServletRequest request);
	
	
}



